package com.eshop.pojo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 公共返回对象
 * @author guyongrui
 */

@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("自定义返回对象封装类")
public class RespBean {
    @ApiModelProperty(value = "状态码",example = "200")
    private long code; //状态码
    @ApiModelProperty(value = "提示信息")
    private String message; //提示信息
    @ApiModelProperty(value = "返回对象")
    private Object obj; //返回对象

    /**
     * 成功返回
     * @param message
     * @return
     */
    public static RespBean success(String message){
        return new RespBean(200,message,null);
    }

    /**
     * 成功返回带对象
     * @param message
     * @param obj
     * @return
     */
    public static RespBean success(String message,Object obj){
        return new RespBean(200,message,obj);
    }

    /**
     * 失败返回
     * @param message
     * @return
     */
    public static RespBean error(String message){
        return  new RespBean(500,message,null);
    }

    /**
     * 失败返回带对象
     * @param message
     * @param obj
     * @return
     */
    public static RespBean error(String message,Object obj){
        return  new RespBean(500,message,obj);
    }
}
